package com.quanyan.platform.service;

import com.quanyan.club.entity.RespClubBaseInfo;
import com.quanyan.club.entity.RespClubOpenInfo;
import com.quanyan.club.entity.RespMyLastActivity;
import com.quanyan.club.entity.vo.resp.RespSearchActivity;
import com.quanyan.platform.model.resp.RespClubRecommendInfo;
import com.quanyan.platform.model.resp.RespTalentActivity;

import java.util.List;

/**
 * Created by zhang on 17/3/14.
 */
public interface PlatformRecommendService {

    /**
     * 获取俱乐部活动推荐
     * @param size
     * @param lat
     * @param lng
     * @param categoryId
     * @return
     */
    List<RespSearchActivity> getClubActivityRecommend(int size,double lat,double lng,int categoryId,int circleId,double circleLat,double circleLng,int radius);

    /**
     * 获取俱乐部推荐
     * @param size 推荐个数
     * @param lat  纬度
     * @param lng  经度
     * @param distance  半径
     * @param categoryId    运动类型ID
     * @return
     */
    List<RespClubRecommendInfo> getClubInfoRecommend(int size,double lat,double lng,double distance,int categoryId,int uid,int circleId,double circleLat,double circleLng,int radius);

    /**
     * 获取运动圈达人推荐
     * @return
     */
    List<RespTalentActivity> getTalentRecommend(int circleId,int categoryId,double lat,double lng,double circleLat,double circleLng,int radius);

    /**
     * 获取活动推荐
     * @param lat
     * @param lng
     * @param clubId
     * @param size
     * @return
     */
    List<RespSearchActivity> getActivityByClub(double lat,double lng,int clubId,int size,double circleLat,double circleLng,int radius);

    /**
     * 获取俱乐部推荐信息
     * @param size
     * @param lat
     * @param lng
     * @param distance
     * @param categoryId
     * @param uid
     * @return
     */
    List<RespClubBaseInfo> getClubBaseInfoList(int size,double lat,double lng,double distance,int categoryId,int uid,double circleLat,double circleLng,int radius);

    /**
     * 获取我的最近的俱乐部活动
     * @param uid
     * @return
     */
    RespMyLastActivity getMyClubActivity(int uid,double circleLat,double circleLng,int radius);



}
